import ObsClient from 'esdk-obs-browserjs/src/obs'
import { v4 as uuidv4 } from 'uuid';
import type {Ref} from "vue";
// 创建ObsClient实例
export const obsClient = new ObsClient({
    // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险，建议在配置文件或者环境变量中密文存放，使用时解密，确保安全；本示例以ak和sk保存在环境变量中为例，运行本示例前请先在本地环境中设置环境变量AccessKeyID和SecretAccessKey。
    // 前端本身没有process对象，可以使用webpack类打包工具定义环境变量，就可以在代码中运行了。
    // 您可以登录访问管理控制台获取访问密钥AK/SK，获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html
    // access_key_id: process.env.AccessKeyID,
    // secret_access_key: process.env.SecretAccessKey,
    // 这里以华北-北京四为例，其他地区请按实际情况填写
    server: 'https://obs.cn-north-4.myhuaweicloud.com'
});
// 使用访问OBS

export const createKey = () => {
    return uuidv4() + '.jpg'
}
export const createGeneralKey = (fileName: String) => {
    return uuidv4() + '_' + fileName;
}
export const uploadObj = (data: Blob, key: string) => {
    obsClient.putObject({
        Bucket : 'job-linker',
        Key : key,
        Body : data
    }, function (err, result) {
        if(err){
            console.error('Error-->' + err);
        }else{
            console.log('Status-->' + result.CommonMsg.Status);
        }
    });
}
export const getObj = (key: string, returnData: Ref, flag?: Ref) => {
    // 我吐了，先这样
    returnData.value = 'https://job-linker.obs.cn-north-4.myhuaweicloud.com/' + key;
    // obsClient.ect({
    //     Bucket : 'job-linker',
    //     Key : key,
    //     SaveByType : 'file'
    // }, function (err, result) {
    //     if(err){
    //         console.error('Error-->' + err);
    //     }else{
    //         console.log('Status-->' + result.CommonMsg.Status);
    //         if(result.CommonMsg.Status < 300 && result.InterfaceResult){
    //             // 获取下载对象的路径
    //             console.log('Download Path:' + result.InterfaceResult.Content.SignedUrl);
    //             flag.value = true;
    //             returnData.value = result.InterfaceResult.Content.SignedUrl;
    //         }
    //     }
    // });
    // obsClient.ect({
    //     Bucket : 'job-linker',
    //     Key : key,
    // }, function (err, result) {
    //     if(err){
    //         console.error('Error-->' + err);
    //     }else{
    //         console.log('Status-->' + result.CommonMsg.Status);
    //         if(result.CommonMsg.Status < 300 && result.InterfaceResult){
    //             console.log(result.InterfaceResult.Content);
    //             // 获取下载对象的路径
    //             flag.value = true;
    //             returnData.value = result.InterfaceResult.Content;
    //         }
    //     }
    // });
}
